The present disclosure relates to motor speed estimation. Brushless direct current (BLDC) motors, and electric motors in general, are often controlled by using several cascaded closed-loop controllers. One of the loops controls the motor speed and compares the speed setpoint with the actual speed of the electric motor. Because the actual speed of the electric motor is not measured directly, the actual speed of the electric motor may be estimated utilizing information such as the motor position. The subject matter disclosed herein describes a method of estimating electric motor speed from Hall-effect sensor information and accounting for misalignments in the Hall-effect sensor parts and ring magnet irregularities.
A conventional BLDC motor typically includes a stator having electromagnetic poles with windings thereon, and a rotor comprising permanent magnets creating permanent magnetic pole pairs. The stator and the rotor magnetically interact with each other when electric current flows in the stator windings. Phase commutation of current flowing through each of the stator windings is performed at a proper time to form a continuously rotating magnetic field, which can be achieved as a rotor position is correctly recognized.
BLDC motors most commonly utilize a three-phase configuration with Hall-effect sensors imbedded in the motor to define commutation positions for each phase. A conventional three-phase BLDC motor includes a rotor having a plurality of magnetic poles; typically two to eight pole pairs. As illustrated in FIG. 1, a three-phase BLDC motor has six states of commutation (also referred to herein as Hall states). When all six states in the commutation sequence have been performed the sequence is repeated to continue the rotation. The number of ring magnet pole pairs determines the number of electrical revolutions per mechanical revolution. For example, a BLDC having a rotor with two pole pairs requires two electrical revolutions to spin the motor once; in other words, two electrical revolutions produce one mechanical revolution.
Hall-effect sensors in BLDC motors are typically used for rotor ring magnet pole position sensing and to commutate the motor based on the change of the Hall-effect sensor signals. In other words, the Hall-effect sensors are utilized to control current in the stator windings, and thereby control BLDC motor torque. Hall-effect sensors are utilized because they are cost effective position sensors.
Conventional BLDC motors have three Hall-effect sensors embedded into the stator on the non-driving end of the motor. When the rotor magnetic poles pass near the Hall-effect sensors, the Hall-effect sensors give a high or low signal (i.e., pulse) indicating a N or S magnetic pole is passing near the Hall-effect sensors. Based on the combination of three Hall-effect sensors, the exact sequence of commutation can be determined. A Hall state is defined by a predetermined position, or by a continuous set of predetermined positions, of a rotor relative to one or more Hall-effect sensors.
In typical BLDC motor operations, two of the three phases of a BLDC motor conduct current while the third phase has zero current (i.e., a dead phase) in order for the motor to rotate. A conventional three-phase BLDC motor uses Hall-effect sensors, where each Hall state indicates which two of the three phases are active (i.e., not dead). Hall states can be used to create a one-to-one relation with rotor phases and the direction which the voltage needs to be applied. There are six possible Hall phase combinations which cover exactly one electrical revolution; therefore, the position resolution using the three phase Hall-effect sensors is limited to one sixth of an electrical revolution.
A conventional method of estimating motor speed is based on complete Hall-effect pulses and includes triggering on the rising edge of a Hall-effect signal, and dividing the corresponding number of mechanical degrees by the duration of the last Hall period (i.e., the period between a first pulse and a second pulse). However, as illustrated in FIG. 4, information gathered through the conventional method is delayed over a complete electrical revolution of the motor. It is therefore desirable to obtain a speed estimation with a faster response through a different method.
As illustrated in FIG. 4, the method described herein estimates motor speed with a faster response by looking at the duration of each individual Hall state. This speed estimate technique may introduce more noise to the estimated motor speed. Therefore, the present method reduces the effect of noise in the estimated motor speed by learning the motor characteristics. The present method reduces the noise in the BLDC motor speed estimate without introducing the additional delay produced by conventional averaging methods.